1. Field of the Invention
The present invention pertains to wireless telecommunications, and particularly to allocation of channelization codes in a wireless telecommunications system.
2. Related Art and Other Considerations
In a typical cellular radio system, mobile user equipment units (UEs) communicate via a radio access network (RAN) to one or more core networks. The user equipment units (UEs) can be mobile stations such as mobile telephones (“cellular” telephones) and laptops with mobile termination, and thus can be, for example, portable, pocket, hand-held, computer-included, or car-mounted mobile devices which communicate voice and/or data with radio access network.
The radio access network (RAN) covers a geographical area which is divided into cell areas, with each cell area being served by a base station. A cell is a geographical area where radio coverage is provided by the radio base station equipment at a base station site. Each cell is identified by a unique identity, which is broadcast in the cell. The base stations communicate over the air interface (e.g., radio frequencies) with the user equipment units (UE) within range of the base stations. In the radio access network, several base stations are typically connected (e.g., by landlines or microwave) to a radio network controller (RNC). The radio network controller, also sometimes termed a base station controller (BSC), supervises and coordinates various activities of the plural base stations connected thereto. The radio network controllers are typically connected to one or more core networks.
One example of a radio access network is the Universal Mobile Telecommunications (UMTS) Terrestrial Radio Access Network (UTRAN). The UMTS is a third generation system which in some respects builds upon the radio access technology known as Global System for Mobile communications (GSM) developed in Europe. UTRAN is essentially a radio access network providing wideband code division multiple access (WCDMA) to user equipment units (UEs). The Third Generation Partnership Project (3GPP) has undertaken to evolve further the UTRAN and GSM-based radio access network technologies.
There are several interfaces of interest in the UTRAN. The interface between the radio network controllers (RNCs) and the core network(s) is termed the “Iu” interface. The interface between a radio network controller (RNC) and its base stations (BSs) is termed the “Iub” interface. The interface between the user equipment unit (UE) and the base stations is known as the “air interface” or the “radio interface” or “Uu interface”. An interface between radio network controllers (e.g., between a Serving RNC [SRNC] and a Drift RNC [DRNC]) is termed the “Iur” interface.
The radio network controller (RNC) controls the UTRAN. In fulfilling its control role, the RNC manages resources of the UTRAN. Such resources managed by the RNC include (among others) the downlink (DL) power transmitted by the base stations; the uplink (UL) interference perceived by the base stations; and allocating channelization codes (e.g., downlink channelization codes).
The UTRAN interfaces (Iu, Iur and Iub) have two planes, namely, a control plane (CP) and a user plane (UP). In order to control the UTRAN, the radio network application in the different nodes communicate by using the control plane protocols. The RANAP is a control plane protocol for the Iu interface; the RNSAP is a control plane protocol for the Iur interface; and NODE B APPLICATION PART (NBAP) is a control plane protocol for the Iub interface. The control plane protocols are transported over reliable signaling bearers. The transport of data received/transmitted on the radio interface occurs in the user plane (UP). In the user plane, the data is transported over unreliable transport bearers. The serving radio network controller (SRNC) is responsible for establishing the necessary transport bearers between the serving radio network controller (SRNC) and the drift radio network controller (DRNC).
As those skilled in the art appreciate, in W-CDMA technology a common frequency band allows simultaneous communication between a user equipment unit (UE) and plural base stations. Signals occupying the common frequency band are discriminated at the receiving station through spread spectrum CDMA waveform properties based on the use of a high speed, pseudo-noise (PN) code. These high speed PN codes are used to modulate signals transmitted from the base stations and the user equipment units (UEs). Transmitter stations using different PN codes (or a PN code offset in time) produce signals that can be separately demodulated at a receiving station. The high speed PN modulation also allows the receiving station to advantageously generate a received signal from a single transmitting station by combining several distinct propagation paths of the transmitted signal. In CDMA, therefore, a user equipment unit (UE) need not switch frequency when handoff of a connection is made from one cell to another. As a result, a destination cell can support a connection to a user equipment unit (UE) at the same time the origination cell continues to service the connection. Since the user equipment unit (UE) is always communicating through at least one cell during handover, there is no disruption to the call. Hence, the term “soft handover.” In contrast to hard handover, soft handover is a “make-before-break” switching operation.
Thus, in W-CDMA, transmissions from a single source are separated by channelization codes, i.e., downlink connections within one sector and the dedicated physical channel in the uplink from one terminal (e.g., one user equipment unit). Downlink channelization codes used in W-CDMA are Orthogonal Variable Spreading Factor (OVSF) codes that preserve the orthogonality between channels of different rates and spreading factors. The OVSF codes are defined by a binary code tree structure such as that illustrated in FIG. 1. Each node of the tree corresponds to one code, whose spreading factor (SF) is defined by its level (k). As shown by FIG. 1, in W-CDMA there can be as many as nine levels, the root being of level k=0 and the lowest level (of spreading factor 256) at level k=8.
Table 1 shows various code tree relations which are utilized herein. Table 2 shows various ways to define different levels of occupation for a code (c) or a node. There are some important restrictions on how codes can be used. If a code is allocated to a call, this means that all descendant codes in that code's subtree are busy, and no other smaller spreading factor code on the path to the root of the tree can be used (they are unavailable).
TABLE 1CODE RELATIONSTERMINOLOGYMEANINGLevelA code has a level k thatis equal to log2(SF)RootThe single code that has level k = 0ParentA code of level k is parentto a code of the nexthigher level k + 1 if the next higherlevel code is in the parent's subtreeChildA code (c) is childto another code (p) if (p) is parent to (c)DescendantA code (c) is descendant toanother code (p) if (p) can be found in thepath from (c) to the root
TABLE 2LEVELS OF OCCUPATION FOR A CODELEVELDESCRIPTION/MEANINGAllocatedA code itself (c) has been assigned to a callBusyThe code itself has been assigned to a callor a lower level code on the path from the code tothe root has been assigned to a callUnavailableThe code is unavailable to assign to a callbecause one or more codes in the subtree to (c)are allocatedFreeNo codes in the subtree to (c) and in thebranch that leads from (c) to the tree root is busyUsageThe number of codes on the highest level(k = 8 in WCDMA) in the subtree to (c) whichare busyUsersThe number of unique codes that areallocated in the subtree to (c)WeightEvery code can be assigned a weight.The weight can be related, e.g., to how long thiscode will be allocated (based on statistics fordifferent types of services, individual userbehavior, etc.)CombinedThe sum of the weights for all codesWeightthat are allocated in the subtree to (c)
In the case of W-CDMA, different services will request codes of differing Spreading Factors (SF) that match the needed rate. High data-rate users will require a Spreading Factor which block larger parts of the code tree as compared to low data-rate users.
Depending on the particular code allocation algorithm employed, the availability of high-data rate codes (i.e., codes with a low Spreading Factor) may vary considerably. Consider the example allocations of FIG. 2A and FIG. 2B in which the same amount of codes have been allocated. In FIG. 2A and FIG. 2B, the circles shown with black fill are those which have been allocated. Despite the fact that the algorithms of both FIG. 2A and FIG. 2B have allocated the same number of codes, in the code tree of FIG. 2A no higher data-rate codes are available (only codes on the lowest level). In the code tree of FIG. 2B, on the other hand, codes are available on all levels in the tree.
The simplest way to allocate OVSF codes is a sequential allocation, i.e., assigning the first available free code to a call. However, because code availability for high-data rates can be scarce, it can be important that the codes be allocated in such a manner that the availability of codes for high-data rates be maximized. To this end, other allocation approaches have been proposed, such as those described below.
Gilhousen (PCT/US94/08179, WO 95/03652) recognizes the opportunity of assigning codes that are related to busy codes in order to minimize the number of disqualified shorter-length codes. Imbeni et al. (PCT/SE00/02176, WO 01/35550A1) proffers certain pre-selected rules for allocating a code, such rules taking into consideration the availability of different codes to obtain an alleged optimum use of the code structure. These pre-selected rules work from a bottom of the code tree upwards, and select a code based on usage. Magnusson et al. (U.S. Pat. No. 6,163,524) searches up the tree until a code with a desired rate is reached, and makes selections between pairs of possible branches at every level on the basis of the branches' free bandwidths (preferring the branch with the minimum free bandwidth).
It can be expected that increased data-rates and advanced receiver techniques, as well as diversity techniques (like adaptive antennas) will make the limitation of orthogonal codes a problem in future communication systems. For this reason, algorithms that maximize the availability of orthogonal codes, especially for high data-rates, will be important. High data-rate users block a larger part of the code resource than low data-rate users. However, depending on the allocation algorithm used to allocate the codes, the availability of codes for higher data-rates will vary. Therefore, it is important to allocate codes in the code tree in such a fashion that the number of available lower level codes (low SF codes) for high data-rate calls are maximized and the need for reallocations to free up lower level codes are minimized.
If a code of a certain level k is unavailable but the maximum bit rate is not exceeded by the new code of level k, it is always possible to reallocate codes in the tree so that a code with the level k can be allocated. From a UMTS/W-CDMA point of view, the goal is to keep the number of reallocations to a minimum since signaling is needed between the node-B (base station) and the involved user equipment unit for each reallocation. Various existing allocation algorithms only perform local optimization of the code tree, which means that global optimization regarding the lower level codes (high data rate) is not performed.
What is needed, therefore, and an object of the present invention, is a technique for allocating Orthogonal Variable Spreading Factor (OVSF) codes that increases availability of codes for high data-rate users.